#ifndef __TRANSFORM_H__
#define __TRANSFORM_H__
#include "mat4.h"
#include "vec3.h"

extern Mat4x4 scale(const Mat4x4& mat, const Vec3f& scaleVec);
extern Mat4x4 rotate(const Mat4x4& mat, float angle, const Vec3f& aixs);
extern Mat4x4 translate(const Mat4x4& mat, const Vec3f& pos);

extern Mat4x4 lookAt(const Vec3f& pos, const Vec3f& center, const Vec3f& up);
extern Mat4x4 perspective(float fov, float aspect, float near, float far);
extern Mat4x4 viewport(int width, int height);

#endif